Size and fitting recommendation system and method for fashion products

ABSTRACT

A system for size and fitting recommendation for fashion products is provided. The system includes a memory having computer readable instructions stored therein. The system further includes a processor configured to access purchase and content data of one or more fashion products purchased by a plurality of users. The processor is configured to generate an observable feature vector for each of the one or more fashion products. The observable feature vector is generated based upon observable features data corresponding to each of the one or more fashion product. The processor is further configured to aggregate the observable feature vectors of the fashion products purchased by each user to compute an observable user vector for the respective user. In addition, the processor is further configured to generate a latent feature vector for each of the one or more fashion products. The latent feature vector is generated based upon latent features data corresponding to each fashion product. Furthermore, the processor is configured to aggregate the latent feature vectors of fashion products purchased by each user to compute a latent user vector for the respective user. Moreover, the processor further configured to generate size and fitting recommendations of fashion products for each user based upon the observable feature vector, the observable user vector, latent feature vector and the latent user vector.

PRIORITY STATEMENT

The present application claims priority under 35 U.S.C. § 119 to Indianpatent application number 201841017210 filed 08 May, 2018, the entirecontents of which are hereby incorporated herein by reference.

BACKGROUND

The invention relates generally to a system for size recommendation forfashion products and more particularly to a system and method forrecommending fitting and size information for fashion products such asavailable for sale on an e-commerce platform.

Nowadays, online shopping platforms provide consumers with convenienceof shopping at home. Fashion products and especially apparel, is one ofthe fastest growing category in these e-commerce platforms. In general,such platforms have a variety of fashion products available in differentsizes and fitting. Typically, product fit for such fashion products isan important element for consumers in determining their overallsatisfaction with the fashion products. If the consumers are notsatisfied with either of the size or fit of the fashion productpurchased via the e-commerce platform, they may return the products.This may lead to inconvenience for the consumers along with increasedshipping, logistics and other operational costs for the merchants.

Moreover, the e-commerce platforms typically do not provide theconsumers an option to try and inspect the product for their fit andsize unlike offline trial rooms. Consumers' purchase decision restspurely on product details such as images, description and size chartsprovided with the product on the e-commerce platform. However, using thesize charts may require consumers to remember their body measurementsand compare them with product dimensions provided in the size charts.Moreover, different types of apparel may have similar sizerepresentations, such as small (S), medium (M), large (L), extra-large(XL), across different fashion brands, however they may representdifferent physical measurements. For consumers, it may be challenging tofind the right size for their body shape as the retail industry does nothave a standard sizing system. In addition, it may be difficult for theonline shoppers to determine a fit of the product for themselves as theydo not have the option of trying the fashion products such as apparelbefore they purchase them.

Currently, some fashion e-commerce websites provide productrecommendations for consumer based on data available for consumers pastinteractions. However, such recommendations are based on consumers'style preferences and do not take into account the size preferences ofthe consumer. Some of the existing recommendation techniques determinefit and size preferences based on 3D modelling of body shapes of theconsumers. Such techniques rely on inferring body shapes from databaseof manually curated body shape metrics or extracting body shapes fromimages.

Thus, there is a need to provide a system that can standardizeattributes such as size measurements, color and so forth for the fashionproducts that can be utilized in providing product recommendations tothe consumers.

SUMMARY

The following summary is illustrative only and is not intended to be inany way limiting. In addition to the illustrative aspects, exampleembodiments, and features described, further aspects, exampleembodiments, and features will become apparent by reference to thedrawings and the following detailed description. Example embodimentsprovide a system and method for size and fitting recommendation forfashion products.

Briefly, according to an example embodiment, a system for size andfitting recommendation for fashion products is provided. The systemincludes a memory having computer readable instructions stored therein.The system further includes a processor configured to access purchaseand content data of one or more fashion products purchased by aplurality of users. The processor is configured to generate anobservable feature vector for each of the one or more fashion products.The observable feature vector is generated based upon observablefeatures data corresponding to each of the one or more fashion product.The processor is further configured to aggregate the observable featurevectors of the fashion products purchased by each user to compute anobservable user vector for the respective user. In addition, theprocessor is further configured to generate a latent feature vector foreach of the one or more fashion products. The latent feature vector isgenerated based upon latent features data corresponding to each fashionproduct. Furthermore, the processor is configured to aggregate thelatent feature vectors of fashion products purchased by each user tocompute a latent user vector for the respective user. Moreover, theprocessor is further configured to generate size and fittingrecommendations of fashion products for each user based upon theobservable feature vector, the observable user vector, latent featurevector and the latent user vector.

According to another example embodiment, a size and fittingrecommendation system for fashion products is provided. The systemincludes a memory having computer-readable instructions stored therein.The system further includes a processor configured to access purchaseand content data of one or more fashion products purchased by aplurality of users. The processor is configured to identify a first setof fashion products associated with a first purchase record and a secondset of fashion products associated with a second purchase record. Thefirst purchase record is substantially greater than the second purchaserecord. The processor is further configured to generate a firstobservable user vector and a first latent user vector for each of thefirst set of fashion products. The first observable user vector isgenerated based upon observable features data corresponding to each ofthe first set of fashion products and the first latent user vector isgenerated based upon latent features data corresponding to each of thefirst set of fashion products. Further, the processor configured togenerate a second observable user vector and a second latent user vectorfor each of the second set of fashion products. The second observableuser vector is generated based upon observable features datacorresponding to each of the second set of fashion products and thesecond latent user vector is generated based upon latent features datacorresponding to each of the second set of fashion products.Furthermore, the processor is configured to generate size and fittingrecommendations of the first set of fashion products for each user via afirst deep learning model based upon the first observable user vectorand the first latent user vector. Moreover, the processor furtherconfigured to generate size and fitting recommendations of the secondset of fashion products for each user via a second deep learning modelbased upon the second observable user vector and the second latent uservector. The second deep learning model receives deep learning datacorresponding to the first set of fashion products from the first deeplearning model.

According to another example embodiment, a method for recommending sizeand fitting information for fashion products is provided. The methodincludes accessing purchase and content data of one or more fashionproducts purchased by a plurality of users and identifying a first setof fashion products and a second set of fashion products. The first setof fashion products are relatively frequently purchased by the userscompared to the second set of fashion products. In addition, the methodincludes generating a first observable user vector and a first latentuser vector for the first set of fashion products. The first observableuser vector is generated based upon observable features datacorresponding to each of the first set of fashion products and the firstlatent user vector is generated based upon latent features datacorresponding to each of the first set of fashion products. The methodfurther includes generating a second observable user vector and a secondlatent user vector for the second set of fashion products. The secondobservable user vector is generated based upon observable features datacorresponding to each of the second set of fashion products and thesecond latent user vector is generated based upon latent features datacorresponding to each of the second set of fashion products. The methodalso includes generating size and fitting recommendations of the firstset of fashion products for each user via a first deep learning modelbased upon the first observable user vector and the first latent uservector. The method further includes transmitting deep learning datacorresponding to the first set of fashion products to a second deeplearning model and generating size and fitting recommendations of thesecond set of fashion products for each user via the second deeplearning model based upon the second observable user vector and thesecond latent user vector.

BRIEF DESCRIPTION OF THE FIGURES

These and other features, aspects, and advantages of the exampleembodiments will become better understood when the following detaileddescription is read with reference to the accompanying drawings in whichlike characters represent like parts throughout the drawings, wherein:

FIG. 1 illustrates a block diagram illustrating a size and fittingrecommendation system for fashion products, according to an exampleembodiment;

FIG. 2 is a block diagram illustrating another embodiment of the systemof FIG. 1;

FIG. 3 is an example process for recommending size and fitting forfashion products, using the system of FIG. 1, according to the aspectsof the present technique;

FIG. 4 illustrates an example deep autoencoder model used for generatingthe size and fitting recommendations for fashion products using thesystem 100 of FIG. 1;

FIG. 5 is an example illustration of a size recommendation for a fashionproduct displayed to a user via an application on a mobile device; and

FIG. 6 is a block diagram of an embodiment of a computing device inwhich the modules of the size and fitting recommendation system,described herein, are implemented.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

The drawings are to be regarded as being schematic representations andelements illustrated in the drawings are not necessarily shown to scale.Rather, the various elements are represented such that their functionand general purpose become apparent to a person skilled in the art. Anyconnection or coupling between functional blocks, devices, components,or other physical or functional units shown in the drawings or describedherein may also be implemented by an indirect connection or coupling. Acoupling between components may also be established over a wirelessconnection. Functional blocks may be implemented in hardware, firmware,software, or a combination thereof.

Various example embodiments will now be described more fully withreference to the accompanying drawings in which only some exampleembodiments are shown. Specific structural and functional detailsdisclosed herein are merely representative for purposes of describingexample embodiments. Example embodiments, however, may be embodied inmany alternate forms and should not be construed as limited to only theexample embodiments set forth herein.

Accordingly, while example embodiments are capable of variousmodifications and alternative forms, example embodiments are shown byway of example in the drawings and will herein be described in detail.It should be understood, however, that there is no intent to limitexample embodiments to the particular forms disclosed. On the contrary,example embodiments are to cover all modifications, equivalents, andalternatives thereof. Like numbers refer to like elements throughout thedescription of the figures.

Before discussing example embodiments in more detail, it is noted thatsome example embodiments are described as processes or methods depictedas flowcharts. Although the flowcharts describe the operations assequential processes, many of the operations may be performed inparallel, concurrently or simultaneously. In addition, the order ofoperations may be re-arranged. The processes may be terminated whentheir operations are completed, but may also have additional steps notincluded in the figure. The processes may correspond to methods,functions, procedures, subroutines, subprograms, etc.

Specific structural and functional details disclosed herein are merelyrepresentative for purposes of describing example embodiments. Inventiveconcepts may, however, be embodied in many alternate forms and shouldnot be construed as limited to only the example embodiments set forthherein.

It will be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms. These terms are only used to distinguish oneelement from another. For example, a first element could be termed asecond element, and, similarly, a second element could be termed a firstelement, without departing from the scope of example embodiments. Asused herein, the term “and/or,” includes any and all combinations of oneor more of the associated listed items. The phrase “at least one of” hasthe same meaning as “and/or”.

Further, although the terms first, second, etc. may be used herein todescribe various elements, components, regions, layers and/or sections,it should be understood that these elements, components, regions, layersand/or sections should not be limited by these terms. These terms areused only to distinguish one element, component, region, layer, orsection from another region, layer, or section. Thus, a first element,component, region, layer, or section discussed below could be termed asecond element, component, region, layer, or section without departingfrom the scope of inventive concepts.

Spatial and functional relationships between elements (for example,between modules) are described using various terms, including“connected,” “engaged,” “interfaced,” and “coupled.” Unless explicitlydescribed as being “direct,” when a relationship between first andsecond elements is described in the above disclosure, that relationshipencompasses a direct relationship where no other intervening elementsare present between the first and second elements, and also an indirectrelationship where one or more intervening elements are present (eitherspatially or functionally) between the first and second elements. Incontrast, when an element is referred to as being “directly” connected,engaged, interfaced, or coupled to another element, there are nointervening elements present. Other words used to describe therelationship between elements should be interpreted in a like fashion(e.g., “between,” versus “directly between,” “adjacent,” versus“directly adjacent,” etc.).

The terminology used herein is for the purpose of describing particularexample embodiments only and is not intended to be limiting. As usedherein, the singular forms “a,” “an,” and “the,” are intended to includethe plural forms as well, unless the context clearly indicatesotherwise. As used herein, the terms “and/or” and “at least one of”include any and all combinations of one or more of the associated listeditems. It will be further understood that the terms “comprises,”“comprising,” “includes,” and/or “including,” when used herein, specifythe presence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

It should also be noted that in some alternative implementations, thefunctions/acts noted may occur out of the order noted in the figures.For example, two figures shown in succession may in fact be executedsubstantially concurrently or may sometimes be executed in the reverseorder, depending upon the functionality/acts involved.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which example embodiments belong. Itwill be further understood that terms, e.g., those defined in commonlyused dictionaries, should be interpreted as having a meaning that isconsistent with their meaning in the context of the relevant art andwill not be interpreted in an idealized or overly formal sense unlessexpressly so defined herein.

Spatially relative terms, such as “beneath”, “below”, “lower”, “above”,“upper”, and the like, may be used herein for ease of description todescribe one element or feature's relationship to another element(s) orfeature(s) as illustrated in the figures. It will be understood that thespatially relative terms are intended to encompass differentorientations of the device in use or operation in ‘addition to theorientation depicted in the figures. For example, if the device in thefigures is turned over, elements described as “below” or “beneath” otherelements or features would then be oriented “above” the other elementsor features. Thus, term such as “below” may encompass both anorientation of above and below. The device may be otherwise oriented(rotated 90 degrees or at other orientations) and the spatially relativedescriptors used herein are interpreted accordingly.

Portions of the example embodiments and corresponding detaileddescription may be presented in terms of software, or algorithms andsymbolic representations of operation on data bits within a computermemory. These descriptions and representations are the ones by whichthose of ordinary skill in the art effectively convey the substance oftheir work to others of ordinary skill in the art. An algorithm, as theterm is used here, and as it is used generally, is conceived to be aself-consistent sequence of steps leading to a desired result. The stepsare those requiring physical manipulations of physical quantities.Usually, though not necessarily, these quantities take the form ofoptical, electrical, or magnetic signals capable of being stored,transferred, combined, compared, and otherwise manipulated. It hasproven convenient at times, principally for reasons of common usage, torefer to these signals as bits, values, elements, symbols, characters,terms, numbers, or the like.

The device(s)/apparatus(es), described herein, may be realized byhardware elements, software elements and/or combinations thereof. Forexample, the devices and components illustrated in the exampleembodiments of inventive concepts may be implemented in one or moregeneral-use computers or special-purpose computers, such as a processor,a controller, an arithmetic logic unit (ALU), a digital signalprocessor, a microcomputer, a field programmable array (FPA), aprogrammable logic unit (PLU), a microprocessor or any device which mayexecute instructions and respond. A central processing unit mayimplement an operating system (OS) or one or more software applicationsrunning on the OS. Further, the processing unit may access, store,manipulate, process and generate data in response to execution ofsoftware. It will be understood by those skilled in the art thatalthough a single processing unit may be illustrated for convenience ofunderstanding, the processing unit may include a plurality of processingelements and/or a plurality of types of processing elements. Forexample, the central processing unit may include a plurality ofprocessors or one processor and one controller. Also, the processingunit may have a different processing configuration, such as a parallelprocessor.

Software may include computer programs, codes, instructions or one ormore combinations thereof and may configure a processing unit to operatein a desired manner or may independently or collectively control theprocessing unit. Software and/or data may be permanently or temporarilyembodied in any type of machine, components, physical equipment, virtualequipment, computer storage media or units or transmitted signal wavesso as to be interpreted by the processing unit or to provideinstructions or data to the processing unit. Software may be dispersedthroughout computer systems connected via networks and may be stored orexecuted in a dispersion manner. Software and data may be recorded inone or more computer-readable storage media.

The methods according to the above-described example embodiments of theinventive concept may be implemented with program instructions which maybe executed by computer or processor and may be recorded incomputer-readable media. The media may also include, alone or incombination with the program instructions, data files, data structures,and the like. The program instructions recorded in the media may bedesigned and configured especially for the example embodiments of theinventive concept or be known and available to those skilled in computersoftware. Computer-readable media include magnetic media such as harddisks, floppy disks, and magnetic tape; optical media such as compactdisc-read only memory (CD-ROM) disks and digital versatile discs (DVDs);magneto-optical media such as floptical disks; and hardware devices thatare specially configured to store and perform program instructions, suchas read-only memory (ROM), random access memory (RAM), flash memory, andthe like. Program instructions include both machine codes, such asproduced by a compiler, and higher level codes that may be executed bythe computer using an interpreter. The described hardware devices may beconfigured to execute one or more software modules to perform theoperations of the above-described example embodiments of the inventiveconcept, or vice versa.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise, or as is apparent from the discussion,terms such as “processing” or “computing” or “calculating” or“determining” of “displaying” or the like, refer to the action andprocesses of a computer system, or similar electronic computingdevice/hardware, that manipulates and transforms data represented asphysical, electronic quantities within the computer system's registersand memories into other data similarly represented as physicalquantities within the computer system memories or registers or othersuch information storage, transmission or display devices.

At least one example embodiment is generally directed to a system forproviding size and fitting recommendations for fashion products such asavailable for sale on an e-commerce platform.

FIG. 1 is a block diagram illustrating a size and fitting recommendationsystem 100 for fashion products. The system 100 includes a memory 102, aprocessor 104 and an output module 106. Each component is described infurther detail below.

The processor 104 includes a feature vector generation module 114, anaggregation module 116 and a size and fitting recommendation generationmodule 118. The processor 104 is communicatively coupled to the memory102 and is configured to access purchase data 110 and content data 112of one or more fashion products purchased by a plurality of users via ane-commerce fashion platform. The fashion product may include a top wear,a bottom wear, footwear, a bag or combinations thereof. The purchasedata 110 may include the details such as type of fashion productspurchased by the users, cost of the fashion products, type of the seasonin which the fashion products were purchased by the users and so forth.In addition, the content data 112 may include the details such asattributes of the fashion products purchased by the user, sizing andfitting information of the fashion products, type of the fashionproducts, a brand associated with the fashion products and the like.

In operation, the feature vector generation module 114 is configured togenerate an observable feature vector for each of the one or morefashion products. In an embodiment, the observable feature vector isgenerated based upon observable features data corresponding to each ofthe one or more fashion products. As used herein, the term “observablefeatures” refers to features of the fashion products that can bedetermined from a catalogue of the fashion products. Examples of theobservable features data include physical measurements (e.g., a width ofa shoe), type of material, a season type, an occasion type, colour, ashape of the product (e.g., shape of a dress), a type of the product(e.g., a type of a shoe), or combinations thereof of each of the fashionproducts. In one example, the physical measurements data of the fashionproducts are continuous values and may be used directly, whereas othercategorical product attributes may be used as one hot encoded value.

The feature vector generation module 114 is further configured togenerate a latent feature vector for each of the one or more fashionproducts. In an embodiment, the latent feature vector may be generatedbased upon latent features data corresponding to each fashion product.Examples of the latent features data include design information, brandinformation, a type of fit, or combinations thereof of each of thefashion products. In some examples, the feature vector generation module114 is configured to generate the latent feature vector for each of theone or more fashion products using a skip gram technique. Examples ofother techniques that may be used to generate the latent feature vectorinclude bag words model, GLOVE model, low rank matrix factorization, andthe like. In some embodiments, the skip gram word2vec model may betrained based upon the user's non returned purchase data and productcontent data from each of the product category.

The aggregation module 116 is configured to aggregate the observablefeature vectors of the fashion products purchased by each user tocompute an observable user vector for the respective user. In addition,the aggregation module 116 is further configured to aggregate the latentfeature vectors of fashion products purchased by each user to compute alatent user vector for the respective user. In some embodiments, theaggregation module 116 employs an aggregate function to compute theobservable feature vectors and a gradient boosted classifier to outputfit probability of the fashion products.

The size and fitting recommendation generation module 118 is configuredto generate size and fitting recommendations of fashion products foreach user based upon the observable feature vector, the observable uservector, latent feature vector and the latent user vector. In oneembodiment, the size and fitting recommendation generation module 118generates the size and fitting recommendations using a Gradient BoostClassifier (GBC). In other examples, other suitable techniques such as anonlinear classifier like a neural network, ensemble methods likeboosting and bagging may be used to generate size and fittingrecommendations. In this example, the size and fitting recommendationsinclude personalized size information across brands, product type, fittype, brand type or combinations thereof of the fashion products foreach user.

In one example, the size recommendations are formulated as a binaryclassification in which the task is to classify if a given size and/orfit of a fashion product will fit a user. In this example, gradientboosted classifier is used to predict fit probabilities for all thedifferent size/fits of the given fashion product and a user and the onewith highest fit probability is identified as the recommendation for theuser.

In an example, the processor 104 is further configured to analyse thepurchase data 110 of the one or more fashion products purchased by eachof the plurality of users to determine reasons for return and/orexchange of fashion products. Further, the processor 104 is configuredto identify one or more positive samples of fashion products that areretained by the users and one or more negative samples of fashionproducts that are returned and/or exchanged by the users. In thisexample, the purchase data 110, the one or more positive samples, theone or more negative samples, the reasons for return and/or exchange ofthe fashion products, or combinations thereof, are used by the size andfitting recommendation generation module 118 to train the Gradient BoostClassifier to generate size and fitting recommendations for each of theplurality of users. The output module 108 is configured to display thesize and fitting recommendations of the fashion products, generated bythe size and fitting recommendation generation module 118, to a user ofthe system 100.

FIG. 2 is a block diagram illustrating another embodiment 200 of thesystem 100 of FIG. 1. As with the embodiment of FIG. 1; the system 200includes the memory 102, the processor 104 and the output module 106.The processor 104 includes the feature vector generation module 114, theaggregation module 116 and the size and fitting recommendationgeneration module 118. In addition, the processor 104 includes a fashionproducts identification module 202. In this embodiment, the fashionproducts identification module 202 is configured to identify a first setof fashion products associated with a first purchase record and a secondset of fashion products associated with a second purchase record. In anexample, the first set of fashion products are relatively frequentlypurchased by the users as compared to the second set of fashionproducts. As a result, the first purchase record is substantiallygreater than the second purchase record.

In one example, the first set of fashion products may include shirts,t-shirts, jeans, trousers, or combinations thereof. Moreover, the secondset of fashion products may include sweaters, jackets, sweatshirts,tunics, or combinations thereof. As will be appreciated by one personskilled in the art, in certain markets, the fashion products such asshirts, t-shirts etc. may be purchased more as compared to the fashionproducts such as sweaters, jackets, sweatshirts and so forth. However,the first and the second sets of fashion products may vary depending ona number of parameters such as demographics of the consumers, weather ofthe place, types of the fashion products and so forth. In operation, thefeature vector generation module 114 and the aggregation module 116 areconfigured to generate a first observable user vector and a first latentuser vector for each of the first set of fashion products. The firstobservable user vector is generated based upon observable features datacorresponding to each of the first set of fashion products. In addition,the first latent user vector is generated based upon latent featuresdata corresponding to each of the first set of fashion products.

In this example, the observable features data may include physicalmeasurements, type of material, a season type, an occasion type, colour,product type or combinations thereof of each of the fashion products.Moreover, the latent feature data may include design information, brandinformation, a type of fit, or combinations thereof of each of thefashion products.

In addition, the feature vector generation module 114 and theaggregation module 116 are further configured to generate a secondobservable user vector and a second latent user vector for each of thesecond set of fashion products. The second observable user vector isgenerated based upon observable features data corresponding to each ofthe second set of fashion products. Further, the second latent uservector is generated based upon latent features data corresponding toeach of the second set of fashion products.

In an embodiment, the feature vector generation module 114 is configuredto generate first and second observable feature vectors corresponding tothe first set of fashion products and second set of fashion productsrespectively. The aggregation module 116 is further configured toaggregate the first and second observable feature vectors of the fashionproducts purchased by each user to compute the first and secondobservable user vectors respectively for each user.

The feature vector generation module 114 is further configured togenerate first and second latent feature vectors corresponding to thefirst set of fashion products and second set of fashion productsrespectively. In addition, the aggregation module 116 is configured toaggregate the first and second latent feature vectors of fashionproducts purchased by each user to compute the first and second latentuser vectors respectively for each user. In some examples, the featurevector generation module 114 is configured to generate the first latentfeature vector for first set of fashion products using a skip gramtechnique. In this example, the feature vector generation module 114 isfurther configured to generate the second latent feature vector forsecond set of fashion products using an autoencoder.

The size and fitting recommendation module 118 is configured to generatesize and fitting recommendations of the first set of fashion productsfor each user via a first deep learning model based upon the firstobservable user vector and the first latent user vector. The module 118is further configured to generate size and fitting recommendations ofthe second set of fashion products via a second deep learning modelbased upon the second observable user vector and the second latent uservector. In this embodiment, the second deep learning model receives deeplearning data corresponding to the first set of fashion products fromthe first deep learning model.

In this example, the deep learning data corresponding to at least onefashion product of the first set of fashion products is utilized by thesecond deep learning model for generating the size and fittingrecommendations when the at least one fashion product is substantiallysimilar to the second set of fashion product. For example, learning datafor sale of a t-shirt may be utilized for generating size and fittingrecommendations for a similar product like a jacket. In this example,the size and fitting recommendations include personalized sizeinformation across brands, product type, fit type, brand type orcombinations thereof of the fashion products for each user.

FIG. 3 is an example process 300 for recommending size and fitting forfashion products, using the system 100 of FIG. 1, according to theaspects of the present technique.

At step 302, purchase data and content data of one or more fashionproducts purchased by a plurality of users via an e-commerce fashionplatform is accessed. The fashion product may include a top wear, abottom wear, footwear, a bag or combinations thereof. The purchase datamay include the details such as type of fashion products purchased bythe users, cost of the fashion products, type of the season in which thefashion products were purchased by the users and so forth. In addition,the content data may include the details such as attributes of thefashion products purchased by the user, sizing and fitting informationof the fashion products, type of the fashion products, a brandassociated with the fashion products and the like.

At step 304, a first set of fashion products and a second set of fashionproducts are identified. Here, the first set of fashion products areproducts that are relatively frequently purchased by the users ascompared to the second set of fashion products. In an example, the firstset of fashion products may include shirts, t-shirts, jeans, trousers,or the like and the second set of fashion products may include sweaters,jackets, sweatshirts, tunics, or combinations thereof.

At step 306, a first observable user vector and a first latent uservector for the first set of fashion products are generated. The firstobservable user vector is generated based upon observable features datacorresponding to each of the first set of fashion products. Further, thefirst latent user vector is generated based upon latent features datacorresponding to each of the first set of fashion products.

At step 308, a second observable user vector and a second latent uservector for the second set of fashion products, are generated. The secondobservable user vector is generated based upon observable features datacorresponding to each of the second set of fashion products. Further,the second latent user vector is generated based upon latent featuresdata corresponding to each of the second set of fashion products.

At step 310, size and fitting recommendations of the first set offashion products are generated for each user. In this embodiment, thesize and fitting recommendations of the first set of fashion productsare generated via a first deep learning model based upon the firstobservable user vector and the first latent user vector.

At step 312, the deep learning data corresponding to the first set offashion products is transmitted to a second deep learning model. In oneembodiment, in the first set of fashion products, at least one fashionproduct is substantially similar to the second set of fashion products.

At step 314, a size and fitting recommendations of the second set offashion products is generated, for each user via the second deeplearning model based upon the second observable user vector and thesecond latent user vector. Further, the size and fitting recommendationsmay include personalized size information across brands, fit type,product type, brand type, or combinations thereof of the fashion productfor each user. The details of generating the size and fittingrecommendations of the second set of fashion products using thelearnings from the first set of fashion products is described withreference to FIG. 4.

FIG. 4 illustrates an example deep autoencoder model 400 used forgenerating the size and fitting recommendations for fashion productsusing the system 100 of FIG. 1. In this illustrated embodiment, the deepautoencoder model 400 is configured to learn dense representation for aplurality of fashion products based on co-occurrence data in purchasehistory of a plurality of users.

In the illustrated embodiment, the model 400 uses fashion productsinformation as vectors for generating the size and fittingrecommendations. In some examples, attributes in the vectors may becategorical (nominal i.e. take values like regular fit, slim fit and arenot numerical).

As described before, the primary source of data for generating the sizeand fitting recommendations are the user purchase history. Here,word2vec dense vectors are generated for fashion products that have beenfrequently purchased. These fashion products include shirts, T-shirts,jeans, trousers, kurtas etc. These vectors are used to generate therecommendations for the less purchased fashion products such as jackets,sweaters and so forth.

It should be noted that the autoencoder model 400 is a deep neuralnetwork that is given same feature vector as input 402 and output 404.Here, the input feature vector 402 is compressed into a new featurevector 406 with fewer dimensions while training the autoencoder model400 and later decompressed to get the original feature vector. In thisexample, the autoencoder 400 utilizes data related to frequentlypurchased fashion products such as t-shirts, shirts and so on togenerate recommendations for relatively less frequently purchasedfashion products such as jackets, sweaters and so forth. The inputfeatures provided to the autoencoder model 400, have a notion ofsimilarity and hence the compressed features 406 also have the samenotion of similarity where products with similar sizes occur together.These compressed autoencoder features are used for the lesser purchasedfashion products such as sweaters, jackets and the like.

Table 1 shows precision scores for recommendations generated for variousfashion products using the technique described above.

TABLE 1 Article Precision Recall Men Shirts 94.35 100 Men T-shirts 92.60100 Men Jeans 89.84 100 Men Trousers 89.88 100 Men Sweatshirts 82.77 100Women Kurtas 89.96 100 Women Sweatshirts 79.09 100

As can be seen, the technique described above is substantially accuratefor generating the size and recommendations using the autoencoder.

FIG. 5 is an example illustration of a size recommendation for a fashionproduct displayed to a user via an application on a mobile device 500.As can be seen, the user is presented with a size chart 502 displayingvarious sizes such as 38, 44 and 46, available for the fashion product500. As can be seen, a size recommendation 504 of 44, is recommended forthe fashion product 500 for the user. This size recommendation isgenerated based on users' purchase history. In an embodiment the usermay save the fashion product 500 along with the recommended size 44, inhis/her wishlist. The user may also, add the selected fashion product500 with the recommended size 44, to his/her cart in order to purchasethe fashion product 500.

The modules of size and fitting recommendation system 100 for fashionproducts described herein are implemented in computing devices. Oneexample of a computing device 600 is described below in FIG.6. Thecomputing device includes one or more processor 602, one or morecomputer-readable RAMs 604 and one or more computer-readable ROMs 606 onone or more buses 608. Further, computing device 600 includes a tangiblestorage device 610 that may be used to execute operating systems 620 andthe size and fitting recommendation system 100. The various modules ofthe size and fitting recommendation system 100 include a processor 104,a memory 102 and an output module 106. The processor 104 furtherincludes a feature vector generation module 114, an aggregation module116 and a size and fitting recommendation generation module 118. Both,the operating system 620 and the system 100 are executed by processor602 via one or more respective RAMs 604 (which typically includes cachememory). The execution of the operating system 620 and/or the system 100by the processor 602, configures the processor 602 as a special purposeprocessor configured to carry out the functionalities of the operationsystem 620 and/or the size and fitting recommendation system 100, asdescribed above.

Examples of storage devices 610 include semiconductor storage devicessuch as ROM 606, EPROM, flash memory or any other computer-readabletangible storage device that may store a computer program and digitalinformation.

Computing device also includes a R/W drive or interface 614 to read fromand write to one or more portable computer-readable tangible storagedevices 628 such as a CD-ROM, DVD, memory stick or semiconductor storagedevice. Further, network adapters or interfaces 612 such as a TCP/IPadapter cards, wireless Wi-Fi interface cards, or 3G or 4G wirelessinterface cards or other wired or wireless communication links are alsoincluded in computing device.

In one example embodiment, the size and fitting recommendation system100 which includes a processor 104, a memory 102 and an output module106, may be stored in tangible storage device 610 and may be downloadedfrom an external computer via a network (for example, the Internet, alocal area network or other, wide area network) and network adapter orinterface 612.

Computing device further includes device drivers 616 to interface withinput and output devices. The input and output devices may include acomputer display monitor 618, a keyboard 624, a keypad, a touch screen,a computer mouse 626, and/or some other suitable input device.

It will be understood by those within the art that, in general, termsused herein, are generally intended as “open” terms (e.g., the term“including” should be interpreted as “including but not limited to,” theterm “having” should be interpreted as “having at least,” the term“includes” should be interpreted as “includes but is not limited to,”etc.). It will be further understood by those within the art that if aspecific number of an introduced claim recitation is intended, such anintent will be explicitly recited in the claim, and in the absence ofsuch recitation no such intent is present.

For example, as an aid to understanding, the following appended claimsmay contain usage of the introductory phrases “at least one” and “one ormore” to introduce claim recitations. However, the use of such phrasesshould not be construed to imply that the introduction of a claimrecitation by the indefinite articles “a” or “an” limits any particularclaim containing such introduced claim recitation to embodimentscontaining only one such recitation, even when the same claim includesthe introductory phrases “one or more” or “at least one” and indefinitearticles such as “a” or “an” (e.g., “a” and/or “an” should beinterpreted to mean “at least one” or “one or more”); the same holdstrue for the use of definite articles used to introduce claimrecitations. In addition, even if a specific number of an introducedclaim recitation is explicitly recited, those skilled in the art willrecognize that such recitation should be interpreted to mean at leastthe recited number (e.g., the bare recitation of “two recitations,”without other modifiers, means at least two recitations, or two or morerecitations).

While only certain features of several embodiments have beenillustrated, and described herein, many modifications and changes willoccur to those skilled in the art. It is, therefore, to be understoodthat the appended claims are intended to cover all such modificationsand changes as fall within the true spirit of inventive concepts.

The aforementioned description is merely illustrative in nature and isin no way intended to limit the disclosure, its application, or uses.The broad teachings of the disclosure may be implemented in a variety offorms. Therefore, while this disclosure includes particular examples,the true scope of the disclosure should not be so limited since othermodifications will become apparent upon a study of the drawings, thespecification. It should be understood that one or more steps within amethod may be executed in different order (or concurrently) withoutaltering the principles of the present disclosure. Further, althougheach of the example embodiments is described above as having certainfeatures, any one or more of those features described with respect toany example embodiment of the disclosure may be implemented in and/orcombined with features of any of the other embodiments, even if thatcombination is not explicitly described. In other words, the describedexample embodiments are not mutually exclusive, and permutations of oneor more example embodiments with one another remain within the scope ofthis disclosure.

The example embodiment or each example embodiment should not beunderstood as a limiting/restrictive of inventive concepts. Rather,numerous variations and modifications are possible in the context of thepresent disclosure, in particular those variants and combinations whichmay be inferred by the person skilled in the art with regard toachieving the object for example by combination or modification ofindividual features or elements or method steps that are described inconnection with the general or specific part of the description and/orthe drawings, and, by way of combinable features, lead to a new subjectmatter or to new method steps or sequences of method steps, includinginsofar as they concern production, testing and operating methods.Further, elements and/or features of different example embodiments maybe combined with each other and/or substituted for each other within thescope of this disclosure.

Still further, any one of the above-described and other example featuresof example embodiments may be embodied in the form of an apparatus,method, system, computer program, tangible computer readable medium andtangible computer program product. For example, of the aforementionedmethods may be embodied in the form of a system or device, including,but not limited to, any of the structure for performing the methodologyillustrated in the drawings.

In this application, including the definitions below, the term ‘module’or the term ‘controller’ may be replaced with the term ‘circuit.’ Theterm ‘module’ may refer to, be part of, or include processor hardware(shared, dedicated, or group) that executes code and memory hardware(shared, dedicated, or group) that stores code executed by the processorhardware.

The module may include one or more interface circuits. In some examples,the interface circuits may include wired or wireless interfaces that areconnected to a local area network (LAN), the Internet, a wide areanetwork (WAN), or combinations thereof. The functionality of any givenmodule of the present disclosure may be distributed among multiplemodules that are connected via interface circuits. For example, multiplemodules may allow load balancing. In a further example, a server (alsoknown as remote, or cloud) module may accomplish some functionality onbehalf of a client module.

Further, at least one example embodiment relates to a non-transitorycomputer-readable storage medium comprising electronically readablecontrol information (e.g., computer- readable instructions) storedthereon, configured such that when the storage medium is used in acontroller of a magnetic resonance device, at least one exampleembodiment of the method is carried out.

Even further, any of the aforementioned methods may be embodied in theform of a program. The program may be stored on a non-transitorycomputer readable medium, such that when run on a computer device (e.g.,a processor), cause the computer-device to perform any one of theaforementioned methods. Thus, the non-transitory, tangible computerreadable medium is adapted to store information and is adapted tointeract with a data processing facility or computer device to executethe program of any of the above mentioned embodiments and/or to performthe method of any of the above mentioned embodiments.

The computer readable medium or storage medium may be a built-in mediuminstalled inside a computer device main body or a removable mediumarranged so that it may be separated from the computer device main body.The term computer-readable medium, as used herein, does not encompasstransitory electrical or electromagnetic signals propagating through amedium (such as on a carrier wave), the term computer-readable medium istherefore considered tangible and non-transitory. Non-limiting examplesof the non-transitory computer-readable medium include, but are notlimited to, rewriteable non-volatile memory devices (including, forexample flash memory devices, erasable programmable read-only memorydevices, or a mask read-only memory devices), volatile memory devices(including, for example static random access memory devices or a dynamicrandom access memory devices), magnetic storage media (including, forexample an analog or digital magnetic tape or a hard disk drive), andoptical storage media (including, for example a CD, a DVD, or a Blu-rayDisc). Examples of the media with a built-in rewriteable non-volatilememory, include but are not limited to memory cards, and media with abuilt-in ROM, including but not limited to ROM cassettes, etc.Furthermore, various information regarding stored images, for example,property information, may be stored in any other form, or it may beprovided in other ways.

The term code, as used above, may include software, firmware, and/ormicrocode, and may refer to programs, routines, functions, classes, datastructures, and/or objects. Shared processor hardware encompasses asingle microprocessor that executes some or all code from multiplemodules. Group processor hardware encompasses a microprocessor that, incombination with additional microprocessors, executes some or all codefrom one or more modules. References to multiple microprocessorsencompass multiple microprocessors on discrete dies, multiplemicroprocessors on a single die, multiple cores of a singlemicroprocessor, multiple threads of a single microprocessor, or acombination of the above.

Shared memory hardware encompasses a single memory device that storessome or all code from multiple modules. Group memory hardwareencompasses a memory device that, in combination with other memorydevices, stores some or all code from one or more modules.

The term memory hardware is a subset of the term computer-readablemedium. The term computer-readable medium, as used herein, does notencompass transitory electrical or electromagnetic signals propagatingthrough a medium (such as on a carrier wave), the term computer-readablemedium is therefore considered tangible and non-transitory. Non-limitingexamples of the non-transitory computer-readable medium include, but arenot limited to, rewriteable non-volatile memory devices (including, forexample flash memory devices, erasable programmable read-only memorydevices, or a mask read-only memory devices), volatile memory devices(including, for example static random access memory devices or a dynamicrandom access memory devices), magnetic storage media (including, forexample an analog or digital magnetic tape or a hard disk drive), andoptical storage media (including, for example a CD, a DVD, or a Blu-rayDisc). Examples of the media with a built-in rewriteable non-volatilememory, include but are not limited to memory cards, and media with abuilt-in ROM, including but not limited to ROM cassettes, etc.Furthermore, various information regarding stored images, for example,property information, may be stored in any other form, or it may beprovided in other ways.

The apparatuses and methods described in this application may bepartially or fully implemented by a special purpose computer created byconfiguring a general purpose computer to execute one or more particularfunctions embodied in computer programs. The functional blocks andflowchart elements described above serve as software specifications,which may be translated into the computer programs by the routine workof a skilled technician or programmer.

The computer programs include processor-executable instructions that arestored on at least one non-transitory computer-readable medium. Thecomputer programs may also include or rely on stored data. The computerprograms may encompass a basic input/output system (BIOS) that interactswith hardware of the special purpose computer, device drivers thatinteract with particular devices of the special purpose computer, one ormore operating systems, user applications, background services,background applications, etc.

The computer programs may include: (i) descriptive text to be parsed,such as HTML (hypertext markup language) or XML (extensible markuplanguage), (ii) assembly code, (iii) object code generated from sourcecode by a compiler, (iv) source code for execution by an interpreter,(v) source code for compilation and execution by a just-in-timecompiler, etc. As examples only, source code may be written using syntaxfrom languages including C, C++, C#, Objective-C, Haskell, Go, SQL, R,Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, Javascript®, HTML5,Ada, ASP (active server pages), PHP, Scala, Eiffel, Smalltalk, Erlang,Ruby, Flash®, Visual Basic®, Lua, and Python®.

1. A size and fitting recommendation system for fashion products, thesystem comprising: a memory having computer-readable instructions storedtherein; and a processor configured to: access purchase and content dataof one or more fashion products purchased by a plurality of users;generate an observable feature vector for each of the one or morefashion products, wherein the observable feature vector is generatedbased upon observable features data corresponding to each of the one ormore fashion products; aggregate the observable feature vectors of thefashion products purchased by each user to compute an observable uservector for the respective user; generate a latent feature vector foreach of the one or more fashion products, wherein the latent featurevector is generated based upon latent features data corresponding toeach fashion product; aggregate the latent feature vectors of fashionproducts purchased by each user to compute a latent user vector for therespective user; generate size and fitting recommendations of fashionproducts for each user based upon the observable feature vector, theobservable user vector, latent feature vector and the latent uservector.
 2. The size and fitting recommendation system of claim 1,wherein the processor is further configured to execute thecomputer-readable instructions to access the purchase and content dataof the one or more fashion products purchased by the users via ane-commerce fashion platform.
 3. The size and fitting recommendationsystem of claim 2, wherein the processor is further configured toexecute the computer-readable instructions to generate size and fittingrecommendations for fashion apparel purchased by the users via ane-commerce fashion platform.
 4. The size and fitting recommendationsystem of claim 1, wherein the processor is further configured toexecute the computer-readable instructions to generate the size andfitting recommendations using a Gradient Boost Classifier (GBC), aneural network, ensemble techniques, or combinations thereof.
 5. Thesize and fitting recommendation system of claim 4, wherein the processoris further configured to execute the computer-readable instructions to:analyze the purchase data of the one or more fashion products purchasedby each of the plurality of users to determine reasons for return and/orexchange of fashion products; identify one or more positive samples offashion products that are retained by the users; identify one or morenegative samples of fashion products that are returned and/or exchangedby the users; train the Gradient Boost Classifier based upon thepurchase data, the one or more positive samples, the one or morenegative samples, the reasons for return and/or exchange of the fashionproducts, or combinations thereof; and utilize the Gradient BoostClassifier to generate size and fitting recommendations for each of theplurality of users.
 6. The size and fitting recommendation system ofclaim 1, wherein the processor is further configured to execute thecomputer-readable instructions to access the observable features datacorresponding to each of the one or more fashion products, wherein theobservable features data comprises physical measurements, type ofmaterial, a season type, an occasion type, colour, shape, orcombinations thereof of each of the fashion products.
 7. The size andfitting recommendation system of claim 1, wherein the processor isfurther configured to execute the computer-readable instructions toaccess the latent features data corresponding to each fashion product,wherein the latent features data comprises design information, brandinformation, a type of fit, or combinations thereof of each of thefashion products.
 8. The size and fitting recommendation system of claim6, wherein the processor is further configured to execute thecomputer-readable instructions to generate the latent feature vectorusing skip gram based technique, continuous bag words model, GLOVEmodel, low rank matrix factorization, or combinations thereof.
 9. Thesize and fitting recommendation system of claim 1, wherein the processoris further configured to execute the computer-readable instructions togenerate one or more size and fitting recommendations for each user,wherein the size and fitting recommendations comprise personalized sizeinformation across brands, fit type, brand type, product type, orcombinations thereof of the fashion product for each user.
 10. A sizeand fitting recommendation system for fashion products, the systemcomprising: a memory having computer-readable instructions storedtherein; and a processor configured to: access purchase and content dataof one or more fashion products purchased by a plurality of users;identify a first set of fashion products associated with a firstpurchase record and a second set of fashion products associated with asecond purchase record, wherein the first purchase record issubstantially greater than the second purchase record; generate a firstobservable user vector and a first latent user vector for each of thefirst set of fashion products, wherein the first observable user vectoris generated based upon observable features data corresponding to eachof the first set of fashion products and the first latent user vector isgenerated based upon latent features data corresponding to each of thefirst set of fashion products; generate a second observable user vectorand a second latent user vector for each of the second set of fashionproducts, wherein the second observable user vector is generated basedupon observable features data corresponding to each of the second set offashion products and the second latent user vector is generated basedupon latent features data corresponding to each of the second set offashion products; generate size and fitting recommendations of the firstset of fashion products for each user via a first deep learning modelbased upon the first observable user vector and the first latent uservector; generate size and fitting recommendations of the second set offashion products for each user via a second deep learning model basedupon the second observable user vector and the second latent uservector, wherein the second deep learning model receives deep learningdata corresponding to the first set of fashion products from the firstdeep learning model.
 11. The size and fitting recommendation system ofclaim 10, wherein the processor is further configured to execute thecomputer-readable instructions to transmit deep learning datacorresponding to at least one fashion product of the first set offashion products to the second deep learning model, wherein the at leastone fashion product is substantially similar to the second set offashion products.
 12. The size and fitting recommendation system ofclaim 10, wherein the processor is further configured to execute thecomputer-readable instructions to identify the first set of fashionproducts associated with the first purchase record and the second set offashion products associated with the second purchase record, wherein thefirst set of fashion products are relatively frequently purchased by theusers as compared to the second set of fashion products.
 13. The sizeand fitting recommendation system of claim 10, wherein the processor isfurther configured to execute the computer-readable instructions to:generate a first observable feature vector and a second observablefeature vector corresponding to each of the first and second set offashion products respectively; aggregate the first and second observablefeature vectors of the fashion products purchased by each user tocompute the first and second observable user vectors respectively foreach user; generate a first latent feature vector and a second latentfeature corresponding to each of the first and second set of fashionproducts respectively; and aggregate the first and second latent featurevectors of fashion products purchased by each user to compute the firstand second latent user vectors respectively for each user.
 14. The sizeand fitting recommendation system of claim 10, wherein the processor isfurther configured to execute the computer-readable instructions togenerate the first latent feature vector using a skip gram basedtechnique.
 15. The size and fitting recommendation system of claim 10,wherein the processor is further configured to execute thecomputer-readable instructions to generate the second latent featurevector using an autoencoder.
 16. The size and fitting recommendationsystem of claim 10, wherein the processor is further configured toexecute the computer-readable instructions to identify the first and thesecond set of fashion products, wherein the first and second set offashion products comprise fashion apparel.
 17. The size and fittingrecommendation system of claim 16, wherein the processor is furtherconfigured to execute the computer-readable instructions to identify thefirst and the second set of fashion products, wherein the first set offashion products comprise shirts, t-shirts, jeans, trousers, orcombinations thereof and the second set of fashion products comprisesweaters, jackets, sweatshirts, tunics, or combinations thereof.
 18. Thesize and fitting recommendation system of claim 10, wherein theprocessor is further configured to execute the computer-readableinstructions to: access the observable features data corresponding toeach of the one or more fashion products, wherein the observablefeatures data comprises physical measurements, type of material, aseason type, an occasion type, colour, product type, or combinationsthereof of each of the fashion products; and access the latent featuresdata corresponding to each fashion product, wherein the latent featuresdata comprises design information, brand information, a type of fit, orcombinations thereof of each of the fashion products.
 19. The size andfitting recommendation system of claim 10, wherein the processor isfurther configured to execute the computer-readable instructions togenerate one or more size and fitting recommendations for each user,wherein the size and fitting recommendations comprise personalized sizeinformation across brands, fit type, brand type, or combinations thereofof the fashion product for each user.
 20. A computer-implemented methodfor recommending size and fitting information for fashion products, themethod comprising: accessing purchase and content data of one or morefashion products purchased by a plurality of users; identifying a firstset of fashion products and a second set of fashion products, whereinthe first set of fashion products are relatively frequently purchased bythe users compared to the second set of fashion products; generating afirst observable user vector and a first latent user vector for thefirst set of fashion products, wherein the first observable user vectoris generated based upon observable features data corresponding to eachof the first set of fashion products and the first latent user vector isgenerated based upon latent features data corresponding to each of thefirst set of fashion products; generating a second observable uservector and a second latent user vector for the second set of fashionproducts; wherein the second observable user vector is generated basedupon observable features data corresponding to each of the second set offashion products and the second latent user vector is generated basedupon latent features data corresponding to each of the second set offashion products; generating size and fitting recommendations of thefirst set of fashion products for each user via a first deep learningmodel based upon the first observable user vector and the first latentuser vector; transmitting deep learning data corresponding to the firstset of fashion products to a second deep learning model; and generatingsize and fitting recommendations of the second set of fashion productsfor each user via the second deep learning model based upon the secondobservable user vector and the second latent user vector.